int blue = 20; int green = 0; int red = 0; int casa = 236; int ledblu = 3; //led blu int ledgre = 5; //led verde int ledred = 6; //led rosso int ledcasa = 9; //led casette int tempo = 10000; //tempo notte giorno in millisecondi di base int time = 1; //variabile che contiene la regolazione durata giorno notte int ttime = 10; //velocita passaggio notte giorno void setup() { // nulla da inizializzare } void loop() { int sensorValue = analogRead(A0); time = tempo + (sensorValue * 20); for(blue = 20; blue < 255; blue+=1) // da notte a giorno { analogWrite(ledblu,blue); analogWrite(ledgre,green); analogWrite(ledred,green); analogWrite(ledcasa,casa); delay(ttime); green+=1; red+=1; casa-=1; if (blue < 40) green+=1; } red = 255; green = 255; analogWrite(ledblu,blue); analogWrite(ledgre,green); analogWrite(ledred,red); analogWrite(ledcasa,casa); casa=1; delay(time); for(blue = 255; blue >=1; blue-=2) // da giorno a notte { analogWrite(ledblu,blue); analogWrite(ledgre,green); analogWrite(ledred,red); analogWrite(ledcasa,casa); delay(ttime); green-=1; } blue=0; for (red = 255; red >=1; red-=1) { if (green >1) green-=1; analogWrite(ledblu,blue); analogWrite(ledred,red); analogWrite(ledgre,green); analogWrite(ledcasa,casa); delay(ttime); if (casa < 236) casa+=1; if (red < 30) blue+=1; } green=1; red=1; analogWrite(ledblu,blue); analogWrite(ledgre,green); analogWrite(ledred,red); analogWrite(ledcasa,casa); delay(time); casa=236; }